// 配置代理
// 方法一(仅支持一个代理)：在package.json添加 "proxy": "http://localhost:5000"(不用加任何前缀，当请求了本地不存在的资源就会转发给目标服务器)
// 方法二：在项目根目录新建文件，文件名固定为setupProxy.js，内容如下：
// 不能用ES6语法，只能用common js语法。导入文件只能用require(路径)，不能用import!
// const proxy = require('http-proxy-middleware'); //使用proxy为react17版本，并将app.use中createProxyMiddleware替换为proxy
const { createProxyMiddleware } = require('http-proxy-middleware'); //react18版本的方法
const config = require('./config/index')

module.exports = function (app) {
  const pathRewrite_githubProxy = {}
  pathRewrite_githubProxy[`^${config.API_PROXY_STR}`] = ''

  const pathRewrite_localhost = {}
  pathRewrite_localhost[`^${config.API_PROXY_STR}`] = ''

  app.use(
    createProxyMiddleware(config.API_PROXY_STR, {
      target: 'https://api.github.com',
      changeOrigin: true, //修改请求头中host字段的信息，默认为false。若为false，host字段值为本地localhost:3000；若为true，就是目标服务器localhost:5000
      pathRewrite: pathRewrite_githubProxy
    }),
    createProxyMiddleware(config.API_PROXY_STR, {
      target: 'http://localhost:5000',
      changeOrigin: true, //修改请求头中host字段的信息，默认为false。若为false，host字段值为本地localhost:3000；若为true，就是目标服务器localhost:5000
      pathRewrite: pathRewrite_localhost
    }),
    createProxyMiddleware('/yhgl', {
      target: 'http://192.168.0.114:9081',
      changeOrigin: true, //修改请求头中host字段的信息，默认为false。若为false，host字段值为本地localhost:3000；若为true，就是目标服务器localhost:5000
    }),
  )
}